﻿//前端用户登录
var G_ResetPassWordDiv ="";
var G_OldPassWord ="";
var G_IsLogin=0;//登录：1；默认为登录：0
var G_CourseID//课程ID
var G_CourseName//课程名称
$(document).ready(function(){
    G_ResetPassWordDiv=$('#resetPassWordDiv').html();
    $('#resetPassWordDiv').remove();
    initIndex();
     if(G_Prg.getCookie('Login')==='true'){
         G_Prg.$('loginWindow').style.display ='none';
         G_Prg.$('cancellation').style.display='block';
     }
   //设置课程选择列表的高度
    var height= $(document).height()- $('#head').height()-10;
    $('#majorcourselist').height(height);
});

/********************************************************************************
 函数名：initIndex
 功能：初始化index页面
 输入参数: 无
 返回值：无
 创建信息：姜勇军(2015-08-5）
 修改记录：无
 审查人：无
 *******************************************************************************/
function initIndex(){
    G_Prg.setCookie('Url','',false);
    //将要显示的html用一个变量保存
    var studentLoginDiv = $('#studentLoginDiv').html();
    //移除html，以防id重复
    $('#studentLoginDiv').remove();
    setClickEven();
    /********************************************************************************
     函数名：setClickEven
     功能：指点点击事件
     输入参数: 无
     返回值：无
     创建信息：姜勇军(2015-08-06)
     修改记录：无
     审查人：无
     *******************************************************************************/
    function setClickEven(){
        $("#loginWindow").click(function(){
            G_Popup.htmlContent('会员登录',studentLoginDiv,'500px');
        });
        $(".startstudent").click(function(){
               window.location.href='html/default.html';
        });
        $("#cancellation").click(function(){
            G_Popup.confirm('提示','是否要注销?','确认','取消', function(){LoginOut();})
        });
       $(document).on('focus','#txtUserName',function(){
           immediately();
       });
    }
}
/********************************************************************************
 函数名：_login
 功能：用户登陆
 输入参数：无
 返回值：无
 创建信息：姜勇军（2015-09-01）
 审查人：无
 *******************************************************************************/
function Login() {
    var userName = G_Prg.$('txtUserName').value;
    var userPassWord = G_Prg.$('txtPassWord').value;
    G_OldPassWord=userPassWord;
    if(userName===""){
        G_Popup.alert('提示','请输入账号','确认',function(){
            G_Prg.$('alert_modal').style.display = 'none';
            G_Prg.$('txtUserName').focus();
        });
        return
     }
    if(userPassWord===""){
        G_Popup.alert('提示','请输入密码','确认',function(){
            G_Prg.$('alert_modal').style.display = 'none';
            G_Prg.$('txtPassWord').focus();
        });
        return
     }
    if(!_checkUserName(userName)||!_checkPassWord(userPassWord)){
        G_Popup.alert('提示','账号或密码错误');
        return
     }
    var userPasswordMd5 =hex_md5(userPassWord);
    var _success = function (json) {
        if (!json) {
            G_Popup.alert('提示','程序运行错误，服务端无返回数据');
        }
        var jsonData = JSON.parse(json);
        if (jsonData.status === 200) {
          if(userPassWord==="123456"){
               showesetPassWordDivDiv();
               return;
            }else{
              G_Prg.setCookie("Login",true,false);
              G_Prg.$('loginWindow').style.display ='none';
              G_Prg.$('cancellation').style.display='block';
              closeDialog();
            }
            if(G_IsLogin===1){
                selectClass(G_CourseID,G_CourseName)
            }
        } else {
            G_Popup.alert('提示',jsonData.msg);
        }
     }
    var URL='/student/login'
    var params={
        account :userName,
        password :userPassWord
    };
    G_AjaxApi.post(URL, params,true, _success);
}
/********************************************************************************
 函数名：resetPassWord
 功能：用户修改密码请求函数
 输入参数: 无
 返回值：无
 创建信息：姜勇军(2015-09-01)
 修改记录：无
 审查人：无
 *******************************************************************************/
 function resetPassWord() {
     var newPassWord=G_Prg.$('txtNewPassWord').value;
     var confirmPassWord=G_Prg.$('txtConfirmPassWord').value;
     if (newPassWord===""){
       G_Popup.alert('提示','请输入新密码','确认',function(){
           G_Prg.$('alert_modal').style.display = 'none';
           G_Prg.$('txtNewPassWord').focus();
       });
       return;
     }

    if (confirmPassWord===""){
        G_Popup.alert('提示','请输入确认新密码','确认',function(){
            G_Prg.$('alert_modal').style.display = 'none';
            G_Prg.$('txtConfirmPassWord').focus();
        });
        return;
    }
    if(!_checkPassWord(newPassWord)){
        G_Popup.alert('提示','密码长度必须为6-20个字符');
        return;
    }
    if(newPassWord!==confirmPassWord) {
        G_Popup.alert('提示','两次输入的密码不一致，请重新输入!');
        return;
    }
    if(newPassWord==="123456") {
        G_Popup.alert('提示','设置的密码不能与初始值相同!');
        return;
    }
    var _success = function (json) { //G_AjaxApi.get的回调函数
        var jsonData = JSON.parse(json);
        if (jsonData.status === 200) {
            G_Prg.setCookie("Login",true,false);
            G_Prg.$('loginWindow').style.display ='none';
            G_Prg.$('cancellation').style.display='block';
            closeDialog();
            if(G_IsLogin===1){
                selectClass(G_CourseID,G_CourseName)
            }

        }else {
            G_Popup.alert('抱歉',jsonData.msg);
        }
    }
    var URL = '/user/password';
    var params={
        oldPassword:G_OldPassWord,
        newPassword:newPassWord
    };
    G_AjaxApi.post(URL,params ,true, _success);
}
/********************************************************************************
 函数名：selectClass
 功能：选择课程
 输入参数: courseID课程ID，courseName课程名称
 返回值：无
 创建信息：姜勇军(2015-09-07)
 修改记录：无
 审查人：无
 *******************************************************************************/
function selectClass(courseID,courseName) {
    if(G_Prg.getCookie('Login')===null){
      $("#loginWindow").click();
        G_CourseID=courseID;
        G_CourseName=courseName;
        G_IsLogin=1;
      return;
   }
    var _success = function (json) { //G_AjaxApi.get的回调函数
        var jsonData = JSON.parse(json);
        if (jsonData.status === 200) {
            G_Prg.setCookie('courseName',courseName,false);
            window.location.href = 'html/default.html';
        }else {
                G_Popup.alert('提示',jsonData.msg);
        }
    }
    var URL = '/student/course/select';
    var params={
        courseID:courseID
    };
    G_AjaxApi.post(URL,params ,true, _success);
}
/********************************************************************************
 函数名：_loginout
 功能：退出登录
 输入参数：无
 返回值：无
 创建信息：姜勇军（2015-09-08）
 审查人：无
 *******************************************************************************/
function LoginOut() {
    var _success = function (json) {
        if (!json) {
            G_Popup.alert('提示','程序运行错误，服务端无返回数据');
        }
        var jsonData = JSON.parse(json);
        if (jsonData.status === 200) {
            G_IsLogin=0;
            G_Prg.removeCookie('Login');
            G_Prg.$('loginWindow').style.display ='block';
            G_Prg.$('cancellation').style.display='none';
            closeDialog();
        } else {
            G_Popup.alert('提示',jsonData.msg);
        }
    }
    var URL='/logout';
    G_AjaxApi.get(URL,true, _success);
}
/********************************************************************************
 函数名：closeDialog
 功能：关闭对话框
 输入参数:无
 返回值：无
 创建信息：姜勇军（2015-10-08）
 审查人：无
 *******************************************************************************/
function tt(courseID) {
    if(courseID){
        $('#'+courseID).click();
    }else{

        return;
    }
}
/********************************************************************************
 函数名：closeDialog
 功能：关闭对话框
 输入参数:无
 返回值：无
 创建信息：姜勇军（2015-09-08）
 审查人：无
 *******************************************************************************/
function closeDialog() {
    $(".close").click();
}

/********************************************************************************
 函数名：immediately
 功能：即时验证账号
 输入参数: 无
 返回值：无
 创建信息：姜勇军(2015-09-22)
 修改记录：无
 审查人：无
 *******************************************************************************/
function immediately(){
    var element = G_Prg.$('txtUserName');
    if("\v"=="v") {
        element.onpropertychange = webChange;
    }else{
        element.addEventListener("input",webChange,false);
    }
    function webChange(){
        if(element.value){
            var reg1= /^[A-Za-z0-9]*$/gi;
            if(!reg1.exec(element.value)){
                var username=element.value;
                G_Prg.$('txtUserName').value=username.replace(/[^\w\.\/]/ig,'');
            }
        }
    }
}
/********************************************************************************
 函数名：_checkUserName
 功能：检验账号
 输入参数:userName 账号
 返回值：通行证非空且正确返回true，否则返回false
 创建信息：姜勇军（2015-09-01）
 审查人：无
 *******************************************************************************/
function _checkUserName(userName) {
    if (!userName) {
        return false;
    }
    if (userName.length>20||userName.length<2) {
        return false;
    }
    return true;
}

/********************************************************************************
 函数名：_checkPassWord
 功能：检验密码
 输入参数: passWord 密码
 返回值：通行证非空且正确返回true，否则返回false
 创建信息：姜勇军（2015-09-01）
 审查人：无
 *******************************************************************************/
function _checkPassWord(passWord) {
    if (!passWord) {
        return false;
    }
    if (passWord.length>20||passWord.length<6) {
        return false;
    }
    return true;
}
/********************************************************************************
函数名：showesetPassWordDivDiv
功能：显示重置密码弹窗
输入参数: 无
返回值：无
创建信息：姜勇军(2015-08-06)
修改记录：无
审查人：无
*******************************************************************************/
function showesetPassWordDivDiv(){
    G_Popup.htmlContent('修改密码',G_ResetPassWordDiv,'500px');
}



